/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package sisgeroupas.view;

import java.awt.Dimension;
import java.util.ArrayList;
import javax.swing.JDesktopPane;
import javax.swing.JOptionPane;
import sisgeroupas.dao.ClienteDao;
import sisgeroupas.dao.ItemVendidoDao;
import sisgeroupas.dao.ProdutoDao;
import sisgeroupas.dao.VendaDao;
import sisgeroupas.model.ModelCliente;
import sisgeroupas.model.ModelItemVendido;
import sisgeroupas.model.ModelProduto;
import sisgeroupas.model.ModelVenda;
import sisgeroupas.model.TableModelProduto;
import sisgeroupas.model.TableModelVenda;

/**
 *
 * @author Frederico Ribeiro
 */
public class FrmIntVenda extends javax.swing.JInternalFrame {
    JDesktopPane desktop = new JDesktopPane();
    ModelProduto produtoEscolhido = new ModelProduto();
    ModelCliente clienteEscolhido = new ModelCliente();  
    TableModelProduto modelo = new TableModelProduto();
    TableModelVenda modelo2 = new TableModelVenda();
    static boolean vendaAlterada = false;
    
    /**
     * Creates new form FrmIntFornecedor
     */
    public FrmIntVenda(JDesktopPane desktop) {
        initComponents();
        lblIdVenda.setVisible(false);
        lblIdCliente.setVisible(false);
        clienteEscolhido = null;
        produtoEscolhido = null;
        modelo = new TableModelProduto();
        tblProduto.setModel(modelo);//Esse modelo que passo como parâmetro e feito em TableModelCliente.java no pacote model
        modelo2 = new TableModelVenda();
        tblVenda.setModel(modelo2);
        this.desktop = desktop;
        txtNumVenda.setEnabled(false);
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        tbpVenda = new javax.swing.JTabbedPane();
        pnlPrincipal = new javax.swing.JPanel();
        pnlVenda = new javax.swing.JPanel();
        scpProduto = new javax.swing.JScrollPane();
        tblProduto = new javax.swing.JTable();
        txtProduto = new javax.swing.JTextField();
        btnBuscaProduto = new javax.swing.JButton();
        lblProduto = new javax.swing.JLabel();
        btnInsereProduto = new javax.swing.JButton();
        btnRetiraProduto = new javax.swing.JButton();
        btnLimpar = new javax.swing.JButton();
        btnAlterar = new javax.swing.JButton();
        btnExcluir = new javax.swing.JButton();
        btnSalvar = new javax.swing.JButton();
        pnlCliente = new javax.swing.JPanel();
        txtNome = new javax.swing.JTextField();
        lblNome = new javax.swing.JLabel();
        cmbSexo = new javax.swing.JComboBox();
        lblSexo = new javax.swing.JLabel();
        lblDataNascimento = new javax.swing.JLabel();
        lblMae = new javax.swing.JLabel();
        txtMae = new javax.swing.JTextField();
        btnBuscaCliente = new javax.swing.JButton();
        lblIdCliente = new javax.swing.JLabel();
        lblIdVenda = new javax.swing.JLabel();
        fmtDataNascimento = new javax.swing.JFormattedTextField();
        pnlDadosVenda = new javax.swing.JPanel();
        lblValorTotal = new javax.swing.JLabel();
        txtValorTotal = new javax.swing.JTextField();
        lblDataVenda = new javax.swing.JLabel();
        lblNumVenda = new javax.swing.JLabel();
        txtNumVenda = new javax.swing.JTextField();
        lblDesconto = new javax.swing.JLabel();
        cmbDesconto = new javax.swing.JComboBox();
        fmtDataVenda = new javax.swing.JFormattedTextField();
        pnlPrincipalBuscar = new javax.swing.JPanel();
        pnlBuscar = new javax.swing.JPanel();
        lblBuscaVenda = new javax.swing.JLabel();
        btnBuscaVenda = new javax.swing.JButton();
        scpVenda = new javax.swing.JScrollPane();
        tblVenda = new javax.swing.JTable();
        btnSelecionar = new javax.swing.JButton();
        btnLimparBusca = new javax.swing.JButton();
        fmtBuscaDataVenda = new javax.swing.JFormattedTextField();

        setClosable(true);
        setIconifiable(true);

        pnlVenda.setBorder(javax.swing.BorderFactory.createTitledBorder("Informações"));

        tblProduto.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null}
            },
            new String [] {
                "Title 1", "Title 2", "Title 3", "Title 4"
            }
        ));
        scpProduto.setViewportView(tblProduto);

        btnBuscaProduto.setIcon(new javax.swing.ImageIcon(getClass().getResource("/sisgeroupas/icones/lupa2_16x16.png"))); // NOI18N
        btnBuscaProduto.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnBuscaProdutoActionPerformed(evt);
            }
        });

        lblProduto.setText("Produto:");

        btnInsereProduto.setIcon(new javax.swing.ImageIcon(getClass().getResource("/sisgeroupas/icones/down_16x16.png"))); // NOI18N
        btnInsereProduto.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnInsereProdutoActionPerformed(evt);
            }
        });

        btnRetiraProduto.setIcon(new javax.swing.ImageIcon(getClass().getResource("/sisgeroupas/icones/up_16x16.png"))); // NOI18N
        btnRetiraProduto.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnRetiraProdutoActionPerformed(evt);
            }
        });

        btnLimpar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/sisgeroupas/icones/817_32x32.png"))); // NOI18N
        btnLimpar.setText("Limpar");
        btnLimpar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnLimparActionPerformed(evt);
            }
        });

        btnAlterar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/sisgeroupas/icones/1957_32x32.png"))); // NOI18N
        btnAlterar.setText("Alterar");
        btnAlterar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnAlterarActionPerformed(evt);
            }
        });

        btnExcluir.setIcon(new javax.swing.ImageIcon(getClass().getResource("/sisgeroupas/icones/7898_32x32.png"))); // NOI18N
        btnExcluir.setText("Excluir");
        btnExcluir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnExcluirActionPerformed(evt);
            }
        });

        btnSalvar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/sisgeroupas/icones/6228_32x32.png"))); // NOI18N
        btnSalvar.setText("Salvar");
        btnSalvar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnSalvarActionPerformed(evt);
            }
        });

        pnlCliente.setBorder(javax.swing.BorderFactory.createTitledBorder("Indentificação Cliente"));

        lblNome.setText("Nome:");

        cmbSexo.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Masculino", "Feminino" }));

        lblSexo.setText("Sexo:");

        lblDataNascimento.setText("Data Nasc.:");

        lblMae.setText("Mãe:");

        btnBuscaCliente.setIcon(new javax.swing.ImageIcon(getClass().getResource("/sisgeroupas/icones/lupa2_16x16.png"))); // NOI18N
        btnBuscaCliente.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnBuscaClienteActionPerformed(evt);
            }
        });

        try {
            fmtDataNascimento.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.MaskFormatter("##/##/####")));
        } catch (java.text.ParseException ex) {
            ex.printStackTrace();
        }

        javax.swing.GroupLayout pnlClienteLayout = new javax.swing.GroupLayout(pnlCliente);
        pnlCliente.setLayout(pnlClienteLayout);
        pnlClienteLayout.setHorizontalGroup(
            pnlClienteLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlClienteLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(pnlClienteLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(pnlClienteLayout.createSequentialGroup()
                        .addGroup(pnlClienteLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addGroup(pnlClienteLayout.createSequentialGroup()
                                .addComponent(txtNome, javax.swing.GroupLayout.PREFERRED_SIZE, 372, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(btnBuscaCliente, javax.swing.GroupLayout.PREFERRED_SIZE, 21, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED))
                            .addGroup(pnlClienteLayout.createSequentialGroup()
                                .addComponent(lblNome, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(lblIdCliente)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addComponent(lblIdVenda)
                                .addGap(62, 62, 62)))
                        .addGroup(pnlClienteLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(lblDataNascimento)
                            .addComponent(fmtDataNascimento, javax.swing.GroupLayout.PREFERRED_SIZE, 65, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addGroup(pnlClienteLayout.createSequentialGroup()
                        .addGroup(pnlClienteLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(pnlClienteLayout.createSequentialGroup()
                                .addComponent(lblSexo)
                                .addGap(40, 40, 40)
                                .addComponent(lblMae)
                                .addGap(0, 0, Short.MAX_VALUE))
                            .addGroup(pnlClienteLayout.createSequentialGroup()
                                .addComponent(cmbSexo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                .addComponent(txtMae)))
                        .addGap(10, 10, 10))))
        );
        pnlClienteLayout.setVerticalGroup(
            pnlClienteLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlClienteLayout.createSequentialGroup()
                .addGroup(pnlClienteLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(lblNome)
                    .addComponent(lblDataNascimento)
                    .addComponent(lblIdCliente)
                    .addComponent(lblIdVenda))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(pnlClienteLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(btnBuscaCliente, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
                    .addGroup(pnlClienteLayout.createSequentialGroup()
                        .addGroup(pnlClienteLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(txtNome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(fmtDataNascimento, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(0, 0, Short.MAX_VALUE)))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(pnlClienteLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(lblSexo)
                    .addComponent(lblMae))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(pnlClienteLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(cmbSexo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(txtMae, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(22, Short.MAX_VALUE))
        );

        pnlDadosVenda.setBorder(javax.swing.BorderFactory.createTitledBorder("Dados da Venda"));

        lblValorTotal.setText("Valor Total:");

        txtValorTotal.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                txtValorTotalActionPerformed(evt);
            }
        });

        lblDataVenda.setText("Data Venda:");

        lblNumVenda.setText("Número da Venda:");

        lblDesconto.setText("Desconto:");

        cmbDesconto.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));

        try {
            fmtDataVenda.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.MaskFormatter("##/##/####")));
        } catch (java.text.ParseException ex) {
            ex.printStackTrace();
        }

        javax.swing.GroupLayout pnlDadosVendaLayout = new javax.swing.GroupLayout(pnlDadosVenda);
        pnlDadosVenda.setLayout(pnlDadosVendaLayout);
        pnlDadosVendaLayout.setHorizontalGroup(
            pnlDadosVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlDadosVendaLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(pnlDadosVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(lblNumVenda)
                    .addComponent(txtNumVenda, javax.swing.GroupLayout.PREFERRED_SIZE, 98, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(9, 9, 9)
                .addGroup(pnlDadosVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addComponent(lblDataVenda, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(fmtDataVenda))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(pnlDadosVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(lblDesconto)
                    .addComponent(cmbDesconto, javax.swing.GroupLayout.PREFERRED_SIZE, 145, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(18, 18, 18)
                .addGroup(pnlDadosVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(txtValorTotal)
                    .addGroup(pnlDadosVendaLayout.createSequentialGroup()
                        .addComponent(lblValorTotal)
                        .addGap(0, 0, Short.MAX_VALUE)))
                .addContainerGap())
        );
        pnlDadosVendaLayout.setVerticalGroup(
            pnlDadosVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlDadosVendaLayout.createSequentialGroup()
                .addGroup(pnlDadosVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(lblValorTotal)
                    .addComponent(lblDataVenda)
                    .addComponent(lblNumVenda)
                    .addComponent(lblDesconto))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(pnlDadosVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(txtValorTotal, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(txtNumVenda, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(cmbDesconto, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(fmtDataVenda, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(38, Short.MAX_VALUE))
        );

        javax.swing.GroupLayout pnlVendaLayout = new javax.swing.GroupLayout(pnlVenda);
        pnlVenda.setLayout(pnlVendaLayout);
        pnlVendaLayout.setHorizontalGroup(
            pnlVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlVendaLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(pnlVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(pnlVendaLayout.createSequentialGroup()
                        .addGroup(pnlVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addComponent(pnlDadosVenda, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(pnlCliente, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addContainerGap(13, Short.MAX_VALUE))
                    .addGroup(pnlVendaLayout.createSequentialGroup()
                        .addGroup(pnlVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(pnlVendaLayout.createSequentialGroup()
                                .addComponent(btnLimpar)
                                .addGap(30, 30, 30)
                                .addComponent(btnAlterar)
                                .addGap(26, 26, 26)
                                .addComponent(btnExcluir)
                                .addGap(27, 27, 27)
                                .addComponent(btnSalvar))
                            .addGroup(pnlVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(lblProduto)
                                .addGroup(pnlVendaLayout.createSequentialGroup()
                                    .addComponent(txtProduto, javax.swing.GroupLayout.PREFERRED_SIZE, 437, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(btnBuscaProduto, javax.swing.GroupLayout.PREFERRED_SIZE, 21, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(btnInsereProduto, javax.swing.GroupLayout.PREFERRED_SIZE, 23, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGroup(pnlVendaLayout.createSequentialGroup()
                                    .addComponent(scpProduto, javax.swing.GroupLayout.PREFERRED_SIZE, 464, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(btnRetiraProduto, javax.swing.GroupLayout.PREFERRED_SIZE, 23, javax.swing.GroupLayout.PREFERRED_SIZE))))
                        .addGap(0, 0, Short.MAX_VALUE))))
        );
        pnlVendaLayout.setVerticalGroup(
            pnlVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlVendaLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(pnlCliente, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(pnlDadosVenda, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(lblProduto)
                .addGap(9, 9, 9)
                .addGroup(pnlVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addComponent(btnInsereProduto, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
                    .addComponent(btnBuscaProduto, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
                    .addComponent(txtProduto, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(pnlVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addComponent(btnRetiraProduto, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(scpProduto, javax.swing.GroupLayout.PREFERRED_SIZE, 121, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(18, 18, 18)
                .addGroup(pnlVendaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(btnLimpar)
                    .addComponent(btnAlterar)
                    .addComponent(btnExcluir)
                    .addComponent(btnSalvar)))
        );

        javax.swing.GroupLayout pnlPrincipalLayout = new javax.swing.GroupLayout(pnlPrincipal);
        pnlPrincipal.setLayout(pnlPrincipalLayout);
        pnlPrincipalLayout.setHorizontalGroup(
            pnlPrincipalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlPrincipalLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(pnlVenda, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        pnlPrincipalLayout.setVerticalGroup(
            pnlPrincipalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlPrincipalLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(pnlVenda, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addContainerGap())
        );

        tbpVenda.addTab("Venda", pnlPrincipal);

        pnlBuscar.setBorder(javax.swing.BorderFactory.createTitledBorder(""));

        lblBuscaVenda.setText("Buscar Venda por Data:");

        btnBuscaVenda.setIcon(new javax.swing.ImageIcon(getClass().getResource("/sisgeroupas/icones/lupa2_32x32.png"))); // NOI18N
        btnBuscaVenda.setText("Buscar");
        btnBuscaVenda.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnBuscaVendaActionPerformed(evt);
            }
        });

        tblVenda.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null}
            },
            new String [] {
                "Title 1", "Title 2", "Title 3", "Title 4"
            }
        ));
        scpVenda.setViewportView(tblVenda);

        btnSelecionar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/sisgeroupas/icones/check2_32x32.png"))); // NOI18N
        btnSelecionar.setText("Selecionar");
        btnSelecionar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnSelecionarActionPerformed(evt);
            }
        });

        btnLimparBusca.setIcon(new javax.swing.ImageIcon(getClass().getResource("/sisgeroupas/icones/817_32x32.png"))); // NOI18N
        btnLimparBusca.setText("Limpar");
        btnLimparBusca.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnLimparBuscaActionPerformed(evt);
            }
        });

        try {
            fmtBuscaDataVenda.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.MaskFormatter("##/##/####")));
        } catch (java.text.ParseException ex) {
            ex.printStackTrace();
        }

        javax.swing.GroupLayout pnlBuscarLayout = new javax.swing.GroupLayout(pnlBuscar);
        pnlBuscar.setLayout(pnlBuscarLayout);
        pnlBuscarLayout.setHorizontalGroup(
            pnlBuscarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlBuscarLayout.createSequentialGroup()
                .addContainerGap(14, Short.MAX_VALUE)
                .addGroup(pnlBuscarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(pnlBuscarLayout.createSequentialGroup()
                        .addComponent(fmtBuscaDataVenda, javax.swing.GroupLayout.PREFERRED_SIZE, 69, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(btnBuscaVenda))
                    .addComponent(lblBuscaVenda)
                    .addGroup(pnlBuscarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                        .addGroup(pnlBuscarLayout.createSequentialGroup()
                            .addComponent(btnSelecionar)
                            .addGap(34, 34, 34)
                            .addComponent(btnLimparBusca))
                        .addComponent(scpVenda, javax.swing.GroupLayout.PREFERRED_SIZE, 496, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addContainerGap(19, Short.MAX_VALUE))
        );
        pnlBuscarLayout.setVerticalGroup(
            pnlBuscarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlBuscarLayout.createSequentialGroup()
                .addGap(6, 6, 6)
                .addComponent(lblBuscaVenda)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(pnlBuscarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(fmtBuscaDataVenda, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(btnBuscaVenda))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addComponent(scpVenda, javax.swing.GroupLayout.PREFERRED_SIZE, 201, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(28, 28, 28)
                .addGroup(pnlBuscarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(btnLimparBusca)
                    .addComponent(btnSelecionar))
                .addGap(202, 202, 202))
        );

        javax.swing.GroupLayout pnlPrincipalBuscarLayout = new javax.swing.GroupLayout(pnlPrincipalBuscar);
        pnlPrincipalBuscar.setLayout(pnlPrincipalBuscarLayout);
        pnlPrincipalBuscarLayout.setHorizontalGroup(
            pnlPrincipalBuscarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlPrincipalBuscarLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(pnlBuscar, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addContainerGap())
        );
        pnlPrincipalBuscarLayout.setVerticalGroup(
            pnlPrincipalBuscarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlPrincipalBuscarLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(pnlBuscar, javax.swing.GroupLayout.PREFERRED_SIZE, 470, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(70, Short.MAX_VALUE))
        );

        tbpVenda.addTab("Buscar", pnlPrincipalBuscar);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(tbpVenda)
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(tbpVenda, javax.swing.GroupLayout.DEFAULT_SIZE, 579, Short.MAX_VALUE)
                .addContainerGap())
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void btnBuscaProdutoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnBuscaProdutoActionPerformed
              
        dlgResulProd resulProd = new dlgResulProd(null, closable);
        resulProd.setModal(true);
        resulProd.setLocationRelativeTo(desktop);
        resulProd.setVisible(true);
        produtoEscolhido = resulProd.retornaProduto();
        txtProduto.setText(produtoEscolhido.getDescricao());
        
        
        
        
        
    }//GEN-LAST:event_btnBuscaProdutoActionPerformed

    private void btnBuscaClienteActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnBuscaClienteActionPerformed
              
        dlgResulCliente resulCliente = new dlgResulCliente(null, closable);
        resulCliente.setModal(true);
        resulCliente.setLocationRelativeTo(desktop);
        resulCliente.setVisible(true);
        clienteEscolhido = resulCliente.retornaCliente();
        lblIdCliente.setText(String.valueOf(clienteEscolhido.getId()));
        txtNome.setText(clienteEscolhido.getNome());
        fmtDataNascimento.setText(clienteEscolhido.getDataNascimento());
        if(clienteEscolhido.getSexo().equals("Feminino"))
        {
            cmbSexo.setSelectedItem("Feminino");
        }
        if(clienteEscolhido.getSexo().equals("Masculino"))
        {
            cmbSexo.setSelectedItem("Masculino");
        }
        txtMae.setText(clienteEscolhido.getNomeMae());
    }//GEN-LAST:event_btnBuscaClienteActionPerformed

    private void btnInsereProdutoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnInsereProdutoActionPerformed
        Float valorTotal= 0f;
        modelo.addCadastro(produtoEscolhido);
        if(txtValorTotal.getText().equals("")){
            valorTotal = 0f;
        }
        else valorTotal = Float.parseFloat(txtValorTotal.getText());
        
       valorTotal = produtoEscolhido.getPreco()+ valorTotal; 
       txtValorTotal.setText(String.valueOf(valorTotal));
       produtoEscolhido=null;
       txtProduto.setText("");
    }//GEN-LAST:event_btnInsereProdutoActionPerformed

    private void btnRetiraProdutoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnRetiraProdutoActionPerformed
        int linhaSel = tblProduto.getSelectedRow();
        int colunaSel = tblProduto.getSelectedColumn();
        produtoEscolhido = modelo.getProduto(linhaSel);
        Float valorTotal =0f;
        valorTotal = Float.parseFloat(txtValorTotal.getText());
        valorTotal = valorTotal - produtoEscolhido.getPreco();
        txtValorTotal.setText(String.valueOf(valorTotal));
        modelo.removeCadastro(linhaSel);
        produtoEscolhido=null;
    }//GEN-LAST:event_btnRetiraProdutoActionPerformed

    private void btnLimparActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnLimparActionPerformed
        limparVendas();
        desabilitarCampos();
    }//GEN-LAST:event_btnLimparActionPerformed

    private void btnAlterarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAlterarActionPerformed
       habilitarCampos();
       vendaAlterada = true;
    }//GEN-LAST:event_btnAlterarActionPerformed

    private void btnSalvarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnSalvarActionPerformed
        if(vendaAlterada == true){//Atualiza
              ModelVenda venda = new ModelVenda();
                venda.setIdVenda(Integer.parseInt(lblIdVenda.getText()));
                venda.setIdCliente(Integer.parseInt(lblIdCliente.getText()));
                venda.setDataVenda(fmtDataVenda.getText());
                venda.setValorTotal(Float.parseFloat(txtValorTotal.getText()));
                         
                VendaDao vendaDao = new VendaDao();
                vendaDao.atualizar(venda);
                //Atualizando itens
                
                ArrayList <ModelItemVendido> arrayItem = new ArrayList<ModelItemVendido>();        
                
                ItemVendidoDao itemDao = new ItemVendidoDao();
                arrayItem = itemDao.pesquisar(venda.getIdVenda());//Pego todos os itens da mesma venda
                
                if(modelo.getRowCount() > arrayItem.size()){//Testa se tem mais produtos na tabela que no banco
                                    
                        for(int i=0;i<modelo.getRowCount();i++){//Verifica os produtos que estao na tabela mas não estao no banco e os insere
                            //JOptionPane.showMessageDialog(null,"Entrou no primeiro for "+ i);
                                for(int j=0;j<arrayItem.size();j++){//Passa por todos os itens com idVendas iguais
                                     //JOptionPane.showMessageDialog(null,"Entrou no segundo for "+ j);
                                        if(modelo.getProduto(i).getId()!= arrayItem.get(j).getIdProduto() ){//Verifica qual produto tem na tabela e não tem no banco
                                           // JOptionPane.showMessageDialog(null,"Entrou no primeiro if "+ j);
                                            ModelItemVendido item = new ModelItemVendido();
                                            item.setIdVenda(Integer.parseInt(txtNumVenda.getText()));//Setando idVenda no item
                                            item.setIdProduto(modelo.getProduto(i).getId());
                                            //JOptionPane.showMessageDialog(null,modelo.getProduto(i).getId());
                                            item.setIdCliente(Integer.parseInt(lblIdCliente.getText()));
                                            //JOptionPane.showMessageDialog(null,clienteEscolhido.getId());
                                            ItemVendidoDao itemDao2 = new ItemVendidoDao();
                                            itemDao2.inserir(item);
                                        }
                                }

                        }
                }
                  
                else if(modelo.getRowCount() < arrayItem.size()){     
                            for(int i=0;i<arrayItem.size();i++){ //Verifica se os produtos que estão no banco mas não estao na tabela e exclui o item que o contenha                              
                               for(int j=0;j<modelo.getRowCount();j++){
                                   if(arrayItem.get(i).getIdProduto() != modelo.getProduto(j).getId()){
                                         ModelItemVendido item = new ModelItemVendido();
                                         item.setId(arrayItem.get(i).getId());
                                         item.setIdVenda(Integer.parseInt(txtNumVenda.getText()));//Setando idVenda no item
                                         item.setIdProduto(modelo.getProduto(j).getId());
                                         //JOptionPane.showMessageDialog(null,modelo.getProduto(i).getId());
                                         item.setIdCliente(Integer.parseInt(lblIdCliente.getText()));

                                        ItemVendidoDao itemDao2 = new ItemVendidoDao();
                                        itemDao2.apagar(item);  
                                   }
                               }
                            }
                }
                
                        JOptionPane.showMessageDialog(null,"Venda alterada com Sucesso!");
                        vendaAlterada = false;
                        clienteEscolhido = null;
                        desabilitarCampos();
                            
                    
                    
                
             
             
        }
        else{//Salva
                ModelVenda venda = new ModelVenda();
                venda.setIdCliente(clienteEscolhido.getId());
                venda.setDataVenda(fmtDataVenda.getText());
                venda.setValorTotal(Float.parseFloat(txtValorTotal.getText()));
                         
                VendaDao vendaDao = new VendaDao();
                vendaDao.inserir(venda);
                int idGerado = vendaDao.retornaUltimoId();
                //JOptionPane.showMessageDialog(null,idGerado);
                //Salvando itens
                ModelItemVendido item = new ModelItemVendido();
                for(int i=0;i<modelo.getRowCount();i++){
                   item.setIdProduto(modelo.getProduto(i).getId());
                   item.setIdVenda(idGerado);
                   //JOptionPane.showMessageDialog(null,modelo.getProduto(i).getId());
                   item.setIdCliente(clienteEscolhido.getId());
                   //JOptionPane.showMessageDialog(null,clienteEscolhido.getId());
                   ItemVendidoDao itemDao = new ItemVendidoDao();
                   itemDao.inserir(item);
                }
                txtNumVenda.setText(String.valueOf(idGerado));
                JOptionPane.showMessageDialog(null,"Venda Salva com Sucesso!");
                clienteEscolhido = null;
                desabilitarCampos();
            }
    }//GEN-LAST:event_btnSalvarActionPerformed

    private void txtValorTotalActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtValorTotalActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_txtValorTotalActionPerformed

    private void btnBuscaVendaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnBuscaVendaActionPerformed
        ModelVenda venda = new ModelVenda();

        venda.setDataVenda(fmtBuscaDataVenda.getText());

        VendaDao dao = new VendaDao();

        if(!dao.pesquisar(venda).isEmpty()){//Verifica se a pesquisa vai retorna diferente de vazio
            ArrayList <ModelVenda> ResVenda =  dao.pesquisar(venda);

            for(int i=0; i < ResVenda.size();i++)
            {

                modelo2.addCadastro(ResVenda.get(i));
            }
        }else {
            JOptionPane.showMessageDialog(null,"Não foi encontrado nenhum resultado!");
        }
    }//GEN-LAST:event_btnBuscaVendaActionPerformed

    private void btnLimparBuscaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnLimparBuscaActionPerformed
        fmtBuscaDataVenda.setText("");
        modelo2.limpar();
    }//GEN-LAST:event_btnLimparBuscaActionPerformed

    private void btnSelecionarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnSelecionarActionPerformed
        modelo.limpar();
        int linhaSel = tblVenda.getSelectedRow();
        int colunaSel = tblVenda.getSelectedColumn();

        ModelVenda venda = modelo2.getVenda(linhaSel);        
        
        ModelCliente cliente = new ModelCliente();
        cliente.setId(venda.getIdCliente());
        
        ClienteDao dao = new ClienteDao();
        cliente = dao.pesquisar(cliente.getId());
        lblIdVenda.setText(String.valueOf(venda.getIdVenda()));
        lblIdCliente.setText(String.valueOf(cliente.getId()));//Coloca a valor do id em um label oculto
        txtNome.setText(cliente.getNome());
        fmtDataNascimento.setText(cliente.getDataNascimento());
        if(cliente.getSexo().equals("Feminino"))
        {
            cmbSexo.setSelectedItem("Feminino");
        }
        if(cliente.getSexo().equals("Masculino"))
        {
            cmbSexo.setSelectedItem("Masculino");
        }
        txtMae.setText(cliente.getNomeMae());
        txtNumVenda.setText(String.valueOf(venda.getIdVenda()));
        txtValorTotal.setText(String.valueOf(venda.getValorTotal()));
        
        //Carrengando itens
        ArrayList<ModelItemVendido> itens = new ArrayList<ModelItemVendido>();
        ItemVendidoDao itemDao = new ItemVendidoDao();
        itens = itemDao.pesquisar(venda.getIdVenda());
        ProdutoDao pDao = new ProdutoDao();
        for(int i=0;i<itens.size();i++){
            //if()
            modelo.addCadastro(pDao.pesquisar(itens.get(i).getIdProduto()));
        }
        
        
        tbpVenda.setSelectedIndex(0);//Muda o foco da aba
        fmtBuscaDataVenda.setText("");
        modelo2.limpar();        
        desabilitarCampos();
    }//GEN-LAST:event_btnSelecionarActionPerformed

    private void btnExcluirActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnExcluirActionPerformed
        int resposta = JOptionPane.showConfirmDialog(null,"Tem certeza que deseja excluir a venda?");
        if(resposta == JOptionPane.YES_OPTION){
            
             //Apagando os itens
             ArrayList <ModelItemVendido> arrayItem = new ArrayList<ModelItemVendido>();  
             ItemVendidoDao itemDao = new ItemVendidoDao();
             ModelVenda venda = new ModelVenda();
             venda.setIdVenda(Integer.parseInt(txtNumVenda.getText()));
             arrayItem = itemDao.pesquisar(venda.getIdVenda());//Pego todos os itens da mesma venda
             for(int i=0;i<arrayItem.size();i++){
                 itemDao.apagar(arrayItem.get(i));
             }
             //Apagando a venda           
             
             VendaDao dao = new VendaDao();
             dao.apagar(venda);
             
             JOptionPane.showMessageDialog(null,"Venda apagada com sucesso!");
             limparVendas();
             habilitarCampos();
           }
    }//GEN-LAST:event_btnExcluirActionPerformed
public void limparVendas(){
    txtNome.setText("");
    fmtDataNascimento.setText("");
    cmbSexo.setSelectedIndex(0);
    txtMae.setText("");
    txtNumVenda.setText("");
    fmtDataVenda.setText("");
    txtValorTotal.setText("");
    txtProduto.setText("");
    modelo.limpar();
}

public void habilitarCampos(){
    txtNome.setEnabled(true);
    btnBuscaCliente.setEnabled(true);
    fmtDataNascimento.setEnabled(true);
    cmbSexo.setEnabled(true);
    txtMae.setEnabled(true);
    //txtNumVenda.setEnabled(true);
    fmtDataVenda.setEnabled(true);
    txtValorTotal.setEnabled(true);
    txtProduto.setEnabled(true);
    btnBuscaProduto.setEnabled(true);
    btnInsereProduto.setEnabled(true);
    btnRetiraProduto.setEnabled(true);
    tblProduto.setEnabled(true);
}


public void desabilitarCampos(){
    txtNome.setEnabled(false);
    btnBuscaCliente.setEnabled(false);
    fmtDataNascimento.setEnabled(false);
    cmbSexo.setEnabled(false);
    txtMae.setEnabled(false);
    txtNumVenda.setEnabled(false);
    fmtDataVenda.setEnabled(false);
    txtValorTotal.setEnabled(false);
    txtProduto.setEnabled(false);
    btnBuscaProduto.setEnabled(false);
    btnInsereProduto.setEnabled(false);
    btnRetiraProduto.setEnabled(false);
    tblProduto.setEnabled(false);
}
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton btnAlterar;
    private javax.swing.JButton btnBuscaCliente;
    private javax.swing.JButton btnBuscaProduto;
    private javax.swing.JButton btnBuscaVenda;
    private javax.swing.JButton btnExcluir;
    private javax.swing.JButton btnInsereProduto;
    private javax.swing.JButton btnLimpar;
    private javax.swing.JButton btnLimparBusca;
    private javax.swing.JButton btnRetiraProduto;
    private javax.swing.JButton btnSalvar;
    private javax.swing.JButton btnSelecionar;
    private javax.swing.JComboBox cmbDesconto;
    private javax.swing.JComboBox cmbSexo;
    private javax.swing.JFormattedTextField fmtBuscaDataVenda;
    private javax.swing.JFormattedTextField fmtDataNascimento;
    private javax.swing.JFormattedTextField fmtDataVenda;
    private javax.swing.JLabel lblBuscaVenda;
    private javax.swing.JLabel lblDataNascimento;
    private javax.swing.JLabel lblDataVenda;
    private javax.swing.JLabel lblDesconto;
    private javax.swing.JLabel lblIdCliente;
    private javax.swing.JLabel lblIdVenda;
    private javax.swing.JLabel lblMae;
    private javax.swing.JLabel lblNome;
    private javax.swing.JLabel lblNumVenda;
    private javax.swing.JLabel lblProduto;
    private javax.swing.JLabel lblSexo;
    private javax.swing.JLabel lblValorTotal;
    private javax.swing.JPanel pnlBuscar;
    private javax.swing.JPanel pnlCliente;
    private javax.swing.JPanel pnlDadosVenda;
    private javax.swing.JPanel pnlPrincipal;
    private javax.swing.JPanel pnlPrincipalBuscar;
    private javax.swing.JPanel pnlVenda;
    private javax.swing.JScrollPane scpProduto;
    private javax.swing.JScrollPane scpVenda;
    private javax.swing.JTable tblProduto;
    private javax.swing.JTable tblVenda;
    private javax.swing.JTabbedPane tbpVenda;
    private javax.swing.JTextField txtMae;
    private javax.swing.JTextField txtNome;
    private javax.swing.JTextField txtNumVenda;
    private javax.swing.JTextField txtProduto;
    private javax.swing.JTextField txtValorTotal;
    // End of variables declaration//GEN-END:variables
    
    
    public void setPosicao() {  
            Dimension d = this.getDesktopPane().getSize();  
            this.setLocation((d.width - this.getSize().width) / 2, (d.height - this.getSize().height) / 2); }  
}